﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//一个考试管理系统，需要录入考生成绩，只能录入数字，否则会报类型转换异常。
//请编写相关代码，
//1、捕获FormatException异常，并打印输出“异常已处理；
//2、捕获OverflowException异常，数值超出float范围的异常，并打印输出“异常已处理；
//3、捕获一般异常Exception异常。
//4、最终处理finally
//录入成绩结束后，请输出，总学生数，总分数，平均分。
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)

        {
           
            while (true)
            {
                int count = 0;
                int sum = 0;
                int avg = 0;
            
                try
                {
                    Console.WriteLine("请输入的数字为：");
                    float num = float.Parse(Console.ReadLine());
                        count++;
                        sum += (int)num;
                    avg = sum / (int)num;
                }
                catch (FormatException s )
                {
                   Console.WriteLine(s.Message);
                   Console.WriteLine(s.Source);
                   Console.WriteLine(s.StackTrace);
                
                    Console.WriteLine("类型转换异常，异常已处理");

                }
                catch (OverflowException e )
                {
                    Console.WriteLine(e.Message);
                    Console.WriteLine(e.Source);
                    Console.WriteLine(e.StackTrace);
                    Console.WriteLine("float范围的异常，异常已处理");
                
                }
                catch (Exception )
                {
                    Console.WriteLine("捕获所有的异常，异常信息：");
                 
                }
                finally
                {
                    Console.WriteLine("最终处理finally");
                }
                Console.WriteLine("总学生数"+count+ "总分数"+sum+ "平均分"+avg);


            }


        }
    }
}
